1. Field
The following description relates generally to peripheral device drivers, and more particularly to prefetching peripheral device drivers for smart phones and other connected devices prior to high-level operating system (HLOS) boot.
2. Background
Current smart phones, and other wireless devices, may be configured such that each different smart phone model made by each smart phone manufacturer may use a different software environment, and may be associated with different peripherals—both on-board and connected via wired or wireless interface—even though all of the smart phones may be using the same high-level operating system (HLOS), such as ANDROID. As such, initial software provisioning for smart phones may require identifying and loading drivers for every possible peripheral, in a large number of peripheral categories, that may be associated with the phone at some point later in a manufacturing process. As a result, the initial software provisioning for these smart phones requires extensive engineering expertise, a large output of labor, and significant hardware and software resources.
Because it is not known prior to HLOS boot-up which of the possible universe of peripherals are actually associated with the smart phone, identifying and loading drivers “on-the-fly” may cause HLOS boot-up to be more complicated and slower than is preferable.
Furthermore, because an entire universe of drivers may be loaded on to a smart phone, and it is unclear which of the loaded drivers may be used by the HLOS, it is very difficult to provide for centralized management of the HLOS by an interested party such as, for example, a network carrier, a smart phone manufacturer, or software company associated with the HLOS, that wishes to provide an update, such as, for example, a security patch, to all of the phones running the particular HLOS regardless of the phone manufacturers and network to which the phones are subscribed.
As such, it is desired to provide for a simplified initial software provisioning process. It is also desired to provide for faster HLOS boot-up with lower power consumption. It is further desired to provide for central management and updates of a single HLOS across a wide variety of smart phones using the same HLOS, even on different carrier networks.